home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Almathera Ten Pack 2: CDPD 1
/
Almathera Ten on Ten - Disc 2: CDPD 1.iso
/
pd
/
351-375
/
359
/
dice
/
dice.lzh
/
lib
/
fd
/
lseek.c
< prev
next >
Wrap
C/C++ Source or Header
|
1990-03-27
|
528b
|
35 lines
/*
* LSEEK.C
*
* (c)Copyright 1990, Matthew Dillon, All Rights Reserved
*/
#include <stdio.h>
#include <fcntl.h>
#include <ioctl.h>
#include <errno.h>
size_t
lseek(fd, offset, whence)
int fd;
size_t offset;
int whence;
{
_IOFDS *d;
int n = -1;
if (d = __getfh(fd)) {
if (d->fd_Exec)
return((*d->fd_Exec)(d->fd_Fh, IOC_SEEK, offset, whence));
n = Seek(d->fd_Fh, offset, whence-1);
if (n >= 0) {
if (offset || whence != 1)
n = Seek(d->fd_Fh, 0L, 0);
return(n);
}
}
return(n);
}